package cn.jiedanba.cacert.admin.service;

import java.util.List;

import cn.jiedanba.cacert.admin.vo.IssueRootCaVo;
import cn.jiedanba.cacert.admin.vo.RevokeCaVo;
import cn.jiedanba.cacert.common.result.ResponseResult;
import cn.jiedanba.cacert.model.RootCa;

public interface CAService {

	/**
	 * 查询根证书
	 * 
	 * @return
	 */
	List<RootCa> selectRootCaList(RootCa ca);

	/**
	 * 下载签名证书
	 *
	 * @return
	 */
	ResponseResult downloadSignCert(String id);

	/**
	 * 根据id查询
	 * 
	 * @return
	 */
	RootCa selectRootCaById(String id);

	/**
	 * 颁发根证书
	 * 
	 * @param rootCa
	 * @return
	 */
	ResponseResult issueRootCa(IssueRootCaVo vo);

	/**
	 * 吊销CA证书
	 * 
	 * @param vo
	 * @return
	 */
	ResponseResult revokeCa(RevokeCaVo vo);

}
